﻿ 

//===================================================================
//  Copyright (c) 2009-2010  拓维 All rights reserved.
//===================================================================

var search = {
    type  : "form", 
    name  : "search",   
    title : "打款单查询",
    
    //-----------------------------------------------------------------------------------
    //指明这是一个 查询条件 表单，框架将自动创建 查询、重置 按钮
    //重载默认的 查询、重置 按钮点击处理方法
    //onSearchClick     当查询按钮被点击时 触发
    //onResetClick      当重置按钮被点击时 触发
    //-----------------------------------------------------------------------------------
    isSearch : true,            
    onSearchClick : function(){
        alert("这是 重载的 search 方法");
    },
    
    //-----------------------------------------------------------------------------------
    //定义子元素及布局模式
    //-----------------------------------------------------------------------------------
    items : [
        {
            type:"sDate",      title:"开始日期"
        },{
            type:"sDate",      title:"结束日期"
        },{
            type:"combox",      title:"打款类别",
            url:"data/combox_outAccountType.txt",
            root:"dataset.simplecombobox"
        },{
            type:"combox",      title:"资金形式",
            url:"data/combox_AccountType.txt",
            root:"dataset.simplecombobox"
        },{
            type:"combox",      title:"打款方式",
            url:"data/combox_fundsType.txt",
            root:"dataset.simplecombobox"
        }
        
    ],

    layoutConfig : {
        columns : 6
    },
    layout : [
          {
            items:
            [
                {'name':'开始日期'},
                {'name':'结束日期'},
                {'name':'资金形式'},
                {'name':'打款类别'},
                {'name':'打款方式'}
                
            ]
          }
    ]
};

//=======================================================================================
//定义一个静态列表表单对象 grid1
//=======================================================================================
var grid1 = {
    "name"      : "grid1",
    "type"      : "grid",
    "title"     : "打款单列表",
    
    //设置了URL，自动加载表格数据，等同于后面 afterCreateWidgets 方法中的 load方法调用
    "url"       : "data/EquipmentMaintainItem.txt",     
    "height"    : 300,

    //-----------------------------------------------------------------------------------
    //定义表格工具条上按钮,同原框架
    //获取指定的按钮同样使用原来的 getButton(bt's name)
    //-----------------------------------------------------------------------------------
    "tbar"      : [
        {text: '新增'}, '-'
				//{text: '修改'}, '-',
//				{text: '查看'}, '-'
				//{text: '导出'}, '-'
    ],

    //-----------------------------------------------------------------------------------
    //定义表格与 businessData的绑定关系
    //同原框架
    //-----------------------------------------------------------------------------------
    "bindRelation"   : {
        "root"  :"dataset.deecontract",
        "id"    : "id",
        "field" :[
            {name:"ny",mapping:'modifyTime + " " + obj.fisrtTSupDefId'}
        ],
        "col"   :[
            {"header":"打款日期",   "width":100,   "dataIndex":"f1"},
            {"header":"资金形式",   	"width":100,   "dataIndex":"f3" },
            {"header":"打款单类型",   	"width":100,   "dataIndex":"f2" },            
            {"header":"打款方式",   "width":100,   "dataIndex":"f4"},
            {"header":"金额(元)",   	"width":100,   "dataIndex":"f5"},
            {"header":"经手人",   "width":100,   "dataIndex":"f6"},
            {"header":"备注",   "width":100,   "dataIndex":"f7"},
            {"header":"修改",       "width":60,   "dataIndex":"update",   "actionCol"  :true,  "actionText" :"修改"}
        ]
        
    }
};

var grid2 = {
    "name"      : "grid2",
    "type"      : "grid",
    "title"     : "账户余额",
    bbar:false,
    //设置了URL，自动加载表格数据，等同于后面 afterCreateWidgets 方法中的 load方法调用
    "url"       : "data/accountlist.txt",     
    "height"    : 300,

    //-----------------------------------------------------------------------------------
    //定义表格与 businessData的绑定关系
    //同原框架
    //-----------------------------------------------------------------------------------
    "bindRelation"   : {
        "root"  :"dataset.deecontract",
        "id"    : "id",
        "field" :[
            {name:"ny",mapping:'modifyTime + " " + obj.fisrtTSupDefId'}
        ],
        "col"   :[
            {"header":"资金形式",   	"width":100,   "dataIndex":"f1" },
            {"header":"余额(元)",   	"width":100,   "dataIndex":"f2"}
        ]
        
    }
}; 

//=======================================================================================
//定义一个以简单模式布局的页面，简单模式的page对象，包含一个frame页面结构对象
//frame页面结构对象包含其子元素 ：查询按钮、表单、表格
//=======================================================================================
var page1 = new Sail.page({
    id : "page_001",
    haveNavi: true,
    localNaviText : "您的位置：财务管理>打款管理",

    frames : {
        name   : "test0",
        title  : "测试页面0",
        getURL : "data/StandingBookManage.txt", 
        autoLoad : false,

        //-------------------------------------------------------------------------------
        //【步骤1】描述当前 frame 对象包含的子元素
        //-------------------------------------------------------------------------------
        items  : [search,grid1,grid2],
        layoutConfig: {
            columns: 2,
            width: [0.8, 0.2]
        },
        layout: [{
            items: [{
                name: 'search',
                colspan: 2
            }]
        },
        {
            items: [{
                name: 'grid1'
            },{
                name: 'grid2'
            }]
        }],
        //-------------------------------------------------------------------------------
        //【步骤2】重载 frame 对象的 默认处理方法
        //afterCreateWidgets：
        //  使 frame 构造完毕后，加载表格《普通列表》的数据
        //  等同于在表格对象的属性设置中，设置URL的值
        //-------------------------------------------------------------------------------
        afterCreateWidgets : function(){
           // this.getItem('普通列表').load("data/StandingBookManage.txt");
        },
        
        //-------------------------------------------------------------------------------
        //【步骤3】为当前的frame对象绑定事件,即重载了frame对象的bindEvent2Items方法
        //-------------------------------------------------------------------------------
        bindEvent2Items : function(){

            //---------------------------------------------------------------------------
            // 在重载后的函数对象中，
            // 这个时候 this 指向当前的 frame对象
            // 通过传入指定的name调用 getItem方法来获得子元素
            //
            // Sail.open 等价于 原框架中的 sc.open
            // 如果需要，以 window.open 的形式同样可以弹出模态窗口
            //
            // 【关注两个不同示例中 this引用所指的对象】
            //---------------------------------------------------------------------------
           var grid = this.getItem('grid1');
            
        		grid.getButton('新增').on('click',function(){                
            Sail.open("FundAdd.html","add",{},800,400);
            });
             grid.addAction('修改',function(id,row,record,value){            	 
                var sendData = {pid:id};        //设置传递给修改页面的数据
                Sail.open("FundAdd.html","update",sendData,800,400);
            });
        }       
    }
});

page1.run();

    